package org.example.classtopia.Model.Entity;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

import java.time.LocalDateTime;
import java.time.LocalTime;

/**
 * 课程实体类
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class Course {

    private Long id;                // 课程ID

    private Long userId;            // 用户ID

    private String eventType;      // course 或 schedule

    private String name;            // 课程或日程名称

    private String teacher;         // 教师姓名，日程可空

    private String location;        // 上课地点或日程地点

    private String description;   // 日程详情，课程可空

    private Integer dayOfWeek;      // 星期几（1-7）

    private String startTime;    // 开始时间

    private String endTime;      // 结束时间

    private Integer startWeek;      // 开始周次

    private Integer endWeek;        // 结束周次

    private String semester;        // 学期（如：2023-01-01）

    private String color;           // 显示颜色

    private Integer status;         // 状态（0-删除,1-正常）

    private LocalDateTime createdAt; // 创建时间

    private LocalDateTime updatedAt; // 更新时间

    @JsonIgnore // 若你用Jackson，可避免序列化到前端
    private Integer isReminded;

}

